آموزش تسلط بر API های REST با FastAPI [ویدئو]

Mastering REST APIs with FastAPI [Video]

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: در این دوره، شما به FastAPI، یکی از کارآمدترین فریم ورک ها برای ساخت API تسلط خواهید داشت. با مقدمه ای بر اصول API و معماری REST، به سرعت به سمت ایجاد اولین برنامه FastAPI خود خواهید رفت. این دوره سپس به سازماندهی و ساختار پروژه شما می پردازد و اطمینان حاصل می کند که API شما مقیاس پذیر و قابل نگهداری است. شما یاد خواهید گرفت که ویژگی های رسانه های اجتماعی را پیاده سازی کنید، پست ها و نظرات را مدیریت کنید و جنبه های مختلف مسیریابی API را مدیریت کنید. همانطور که پیشرفت می کنید، pytest را یاد خواهید گرفت، یک چارچوب تست قوی. شما برای برنامه های FastAPI خود تست هایی می نویسید و مطمئن می شوید کد شما قابل اعتماد و بدون اشکال است. بخش‌های زیر بر یکپارچه‌سازی پایگاه‌های داده همگام، پیکربندی محیط‌ها و استفاده از Pydantic برای مدیریت پیکربندی تمرکز دارند. همچنین ورود به سیستم، احراز هویت کاربر با JWTها، مدیریت روابط بین چند به چند، و تایید ایمیل های کاربر از طریق ابزارها و خدمات مختلف را بررسی خواهید کرد. این دوره با موضوعات پیشرفته ای مانند آپلود فایل، وظایف پس زمینه برای تولید تصویر، و استقرار برنامه های کاربردی FastAPI به پایان می رسد. شما یاد خواهید گرفت که پروژه های خود را به آخرین نسخه های Pydantic به روز کنید، برنامه خود را در پلتفرم هایی مانند Render مستقر کنید و خطاها را با Sentry مدیریت کنید. این دوره همچنین شامل یکپارچه‌سازی مداوم با GitHub Actions، ساده‌سازی و خودکارسازی فرآیند توسعه شما است. ساخت و استقرار برنامه های کاربردی FastAPI مقیاس پذیر پیاده سازی استراتژی های تست قوی با pytest یکپارچه سازی پایگاه داده های async و مدیریت پیکربندی ها برنامه ها را با ثبت و احراز هویت پیشرفته تقویت کنید وظایف پس زمینه را اجرا کنید و آپلود فایل ها را مدیریت کنید استقرار برنامه‌ها در پلتفرم‌های ابری و پیاده‌سازی CI/CD این دوره برای توسعه‌دهندگان پشتیبان، مهندسان نرم‌افزار، و متخصصان فنی با درک اولیه پایتون و توسعه وب طراحی شده است. آشنایی با API های REST و مفاهیم بنیادی پایگاه داده توصیه می شود. معرفی جامع API ها و REST * راهنمای گام به گام ساخت برنامه های FastAPI * موضوعات پیشرفته مانند آپلود فایل و کارهای پس زمینه

سرفصل ها و درس ها

معرفی دوره Course Introduction

  • انجمن Community

  • به این دوره خوش آمدید! Welcome to this course!

  • API چیست؟ What is an API?

  • REST چیست؟ What is REST?

کار با FastAPI Working with FastAPI

  • معرفی این بخش Introduction to this section

  • اولین برنامه FastAPI شما Your First FastAPI App

  • راه اندازی اولیه برنامه Initial App Setup

  • واردات پرده، قالب بندی و مرتب سازی Linting, formatting and sorting imports

  • API رسانه های اجتماعی ما: افزودن پست ها Our social media API: adding posts

  • تقسیم API ما به فایل ها با APIRouter Splitting our API into files with APIRouter

  • افزودن نظرات به API رسانه های اجتماعی Adding comments to the social media API

مقدمه ای بر پای تست Introduction to pytest

  • مقدمه ای بر بخش pytest Introduction to the pytest section

  • اصول اولیه پایتست The basics of pytest

  • شروع با تست های FastAPI Getting started with FastAPI tests

  • ایجاد پست در آزمون های ما Creating posts in our tests

  • افزودن تست برای پست ها Adding tests for posts

  • افزودن تست نظرات Adding comments tests

کار با پایگاه داده های همگام Working with async databases

  • مقدمه ای بر کار با پایگاه های داده Introduction to working with databases

  • نصب ملزومات برای پایگاه داده های همگام در FastAPI Installing requirements for async databases in FastAPI

  • ایجاد یک فایل کانفیگ با استفاده از Pydantic Creating a config file using Pydantic

  • تنظیمات مختلف در هر محیط Different configurations per environment

  • کش پیکربندی و نحوه دریافت شیء پیکربندی Config caching and how to get the config object

  • راه اندازی پایگاه داده Async با FastAPI Async database setup with FastAPI

  • ارتباط پایگاه داده با رویدادهای طول عمر در FastAPI Database connection with lifespan events in FastAPI

  • تست FastAPI خود را در حالت "تست" اجرا کنید Run your FastAPI test in 'test' mode

  • استفاده از پایگاه داده در روتر FastAPI ما Using a database in our FastAPI router

ورود به برنامه های FastAPI Logging in FastAPI applications

  • مقدمه ای بر ورود به سیستم Introduction to logging

  • لاگ پایتون: لاگرها، هندلرها و قالب‌کننده‌ها Python logging: loggers, handlers, and formatters

  • سلسله مراتب و نام لاگر Logger hierarchies and name

  • افزودن پیکربندی Logging برای برنامه های FastAPI Adding Logging Configuration for FastAPI Applications

  • نحوه پیکربندی چندین لاگر در ماژول لاگ How to configure multiple loggers in the logging module

  • افزودن کنترل کننده فایل برای ذخیره گزارش ها Adding File Handlers for Saving Logs

  • ورود به سیستم را به نقاط پایانی FastAPI خود اضافه کنید Add logging to your FastAPI endpoints

  • ثبت پایتون: فیلترها و فیلترهای سفارشی Python logging: filters and custom filters

  • ثبت HTTPExceptions با یک Exception Handler Logging HTTPExceptions with an Exception Handler

  • شناسایی گزارش‌ها از همان درخواست: شناسه همبستگی Identifying logs from the same request: Correlation ID

  • افزودن فایل های گزارش با فرمت JSON Adding JSON-formatted log files

  • مبهم سازی آدرس های ایمیل در گزارش ها با استفاده از یک فیلتر سفارشی Obfuscating email addresses in logs using a custom filter

  • افزودن Logtail برای Cloud Logging در FastAPI Adding Logtail for Cloud Logging in FastAPI

  • فعال کردن Logtail فقط در تولید Enabling Logtail only in production

احراز هویت کاربر با FastAPI User authentication with FastAPI

  • مقدمه ای بر احراز هویت کاربر Introduction to user authentication

  • الزامات نصب و JWT ها چیست؟ Installing requirements and, what are JWTs?

  • افزودن جدول کاربران و بازیابی کاربران از طریق ایمیل Adding a users table and retrieving users by email

  • افزودن ثبت نام کاربر و تست ها Adding user registration and tests

  • افزودن آزمایش برای نقطه پایانی ثبت نام کاربر Adding tests for the user registration endpoint

  • نحوه هش کردن پسوردها با passlib How to hash passwords with passlib

  • کد دسترسی را ایجاد کنید Generate the access token

  • کاربر فعلی را با توکن خود بازیابی کنید Retrieve the current user with their token

  • از کاربر فعلی در روتر API استفاده کنید Use the current user in the API router

  • تزریق وابستگی: گرفتن کاربر Dependency injection: getting the user

  • افزودن روابط کاربر به جداول دیگر Adding user relationships to other tables

  • (اختیاری) OAuth Password Bearer and Swagger Auth (Optional) OAuth Password Bearer and Swagger Auth

روابط چند به چند Many-to-many relationships

  • اضافه کردن جدول برای لایک پست ها Adding a table for post likes

  • افزودن مسیر API برای لایک کردن پست ها Adding an API route to like posts

  • استخراج پرس و جوهای قابل استفاده مجدد با SQLAlchemy Extracting reusable queries with SQLAlchemy

  • آرگومان های رشته پرس و جو و مرتب سازی داده ها با Enum Query string arguments and data sorting with Enum

تایید ایمیل کاربر User email confirmation

  • ایجاد رمز تایید Creating the confirmation token

  • رمزگشایی رمز تایید Decoding the confirmation token

  • افزودن یک نقطه پایانی تأیید کاربر Adding a user confirmation endpoint

  • نیاز به تایید کاربر برای درخواست های احراز هویت شده Requiring user confirmation for authenticated requests

  • راه اندازی و پیکربندی تفنگ پستی Mailgun set-up and configuration

  • ارسال ایمیل و تست با پایتون Sending emails and testing with Python

  • ارسال ایمیل تایید در ثبت نام Sending a confirmation email on registration

  • ارسال ایمیل با وظایف پس زمینه Sending emails with background tasks

آپلود فایل با FastAPI File Uploads with FastAPI

  • پیکربندی ما برای Backblaze B2 Our configuration for Backblaze B2

  • کتابخانه داخلی برای Backblaze B2 Internal library for Backblaze B2

  • در حال نوشتن نقطه پایانی آپلود فایل ما Writing our file upload endpoint

  • تست نوشتن برای آپلود فایل Writing tests for file upload

وظایف پس زمینه برای تولید تصویر Background Tasks for Image Generation

  • تغییرات مدل و پایگاه داده برای تولید تصویر Model and database changes for image generation

  • پیکربندی برای DeepAI، سرویس شخص ثالث ما Configuration for DeepAI, our third-party service

  • تولید تصاویر با استفاده از وظایف پس زمینه Generating images using background tasks

  • اجرای تولید تصویر در نقطه پایانی FastAPI ما Executing image generation in our FastAPI endpoint

استقرار FastAPI و مدیریت برنامه FastAPI Deployments and Application Management

  • در حال به روز رسانی پروژه ما به Pydantic v2 Updating our project to Pydantic v2

  • یک برنامه FastAPI را برای رندر مستقر کنید Deploy a FastAPI app to Render

  • یک پایگاه داده PostgreSQL رایگان به برنامه FastAPI خود اضافه کنید Add a free PostgreSQL database to your FastAPI app

  • مدیریت خطا با Sentry برای برنامه های FastAPI Error management with Sentry for FastAPI apps

  • ادغام مداوم با GitHub Actions برای برنامه های پایتون Continuous Integration with GitHub Actions for Python apps

نمایش نظرات

Packtpub یک ناشر دیجیتالی کتاب‌ها و منابع آموزشی در زمینه فناوری اطلاعات و توسعه نرم‌افزار است. این شرکت از سال 2004 فعالیت خود را آغاز کرده و به تولید و انتشار کتاب‌ها، ویدیوها و دوره‌های آموزشی می‌پردازد که به توسعه‌دهندگان و متخصصان فناوری اطلاعات کمک می‌کند تا مهارت‌های خود را ارتقا دهند. منابع آموزشی Packtpub موضوعات متنوعی از جمله برنامه‌نویسی، توسعه وب، داده‌کاوی، امنیت سایبری و هوش مصنوعی را پوشش می‌دهد. محتوای این منابع به صورت کاربردی و به‌روز ارائه می‌شود تا کاربران بتوانند دانش و توانایی‌های لازم برای موفقیت در پروژه‌های عملی و حرفه‌ای خود را کسب کنند.

آموزش تسلط بر API های REST با FastAPI [ویدئو]
جزییات دوره
8h 47m
77
Packtpub Packtpub
(آخرین آپدیت)
از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Jose Salvatierra Fuentes Jose Salvatierra Fuentes

خوزه، یک مربی پرشور در حوزه برنامه نویسی و توسعه نرم افزار، بیش از 7 سال را به آموزش آنلاین اختصاص داده است. او Teclado را با چشم‌اندازی برای دموکراتیک کردن آموزش توسعه نرم‌افزار تأسیس کرد و در تلاش برای اطمینان از درک جامع برای دانش‌آموزانش بود. رویکرد او یادگیری کدنویسی را به سفری واضح و پرارزش تبدیل می‌کند و نقاطی را که زمانی مبهم به نظر می‌رسیدند به هم متصل می‌کند. خوزه که در پایتون و جاوا اسکریپت تخصص دارد، در توسعه وب و باطن برتری دارد. او در کتابخانه ها و فریم ورک های مختلف از جمله Flask، React، React Native و AngularJS مهارت دارد. تخصص او به کار با سیستم‌های UNIX، MongoDB، PostgreSQL و ایجاد معماری‌های پیشرفته سیستم گسترش می‌یابد. تعهد خوزه این است که فرآیند یادگیری را کارآمد و لذت بخش کند و دانش آموزان را به سمت تسلط در توسعه نرم افزار هدایت کند.